package cn.iocoder.yudao.module.system.controller.admin.gugu.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 模拟志愿VIP状态 Response VO
 *
 * @author 芋道源码
 */
@Schema(description = "管理后台 - 模拟志愿VIP状态 Response VO")
@Data
public class SimulationVipStatusRespVO {

    @Schema(description = "是否拥有VIP权限", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
    private Boolean hasVip;

    @Schema(description = "VIP开始时间", example = "2024-01-01 00:00:00")
    private LocalDateTime vipStartTime;

    @Schema(description = "VIP结束时间", example = "2024-12-31 23:59:59")
    private LocalDateTime vipEndTime;

    @Schema(description = "VIP状态描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "VIP有效")
    private String statusMessage;

    @Schema(description = "剩余天数", example = "30")
    private Long remainingDays;

    @Schema(description = "是否即将过期（7天内过期）", requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
    private Boolean expiringSoon;

}
